﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using DnaCoreLib;

namespace DnaServiceLib
{
    public class PluginManager
    {
        public List<IPlugin> PluginList { get; set; }
        public List<IFileImporter> FileImporterList { get; set; }
        public List<IWebImporter> WebImporterList { get; set; }
        public List<IAnalyzer> AnalyzerList { get; set; }
        public List<IImportConfiguration> ImportConfigurationList { get; set; }

        public PluginManager()
        {
            PluginList=new List<IPlugin>();
            FileImporterList=new List<IFileImporter>();
            WebImporterList=new List<IWebImporter>();
            AnalyzerList=new List<IAnalyzer>();
            ImportConfigurationList = new List<IImportConfiguration>();
        }

        public void LoadPlugin(IPlugin plugin)
        {
            PluginList.Add(plugin);
        }

        public void AddFileImporter(IFileImporter importer)
        {
            FileImporterList.Add(importer);
        }
        public void AddWebImporter(IWebImporter importer)
        {
            WebImporterList.Add(importer);
        }

        public void AddAnalyzer(IAnalyzer analyzer)
        {
            AnalyzerList.Add(analyzer);
        }

        public void AddImportConfiguration(IImportConfiguration configuration)
        {
            ImportConfigurationList.Add(configuration);
        }
    }


}
